package com.centsuse.my_redis.es.repositories;

import com.centsuse.my_redis.es.entity.KnowledgeDocument;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author bobo
 */
@Repository
public interface KnowledgeDocumentRepository extends ElasticsearchRepository<KnowledgeDocument, String> {

    // 自定义查询方法：根据 taskId 查询
    List<KnowledgeDocument> findByTaskId(String taskId);

    // 自定义查询方法：根据 fileId 查询
    List<KnowledgeDocument> findByFileId(String fileId);

    // 自定义查询方法：根据 paraId 查询
    KnowledgeDocument findByParaId(String paraId);

    // 自定义查询方法：根据标题关键词进行全文搜索 (搜索 kn_title 字段)
    List<KnowledgeDocument> findByKnTitleContaining(String keyword);

    // 自定义查询方法：根据内容进行全文搜索 (搜索 content 字段)
    List<KnowledgeDocument> findByContentContaining(String keyword);

    // 自定义查询方法：根据 vectorized_flag 查询
    List<KnowledgeDocument> findByVectorizedFlag(String flag);

    // 自定义查询方法：根据 del_flag 查询
    List<KnowledgeDocument> findByDelFlag(String flag);
    // 可以根据其他字段定义更多的自定义查询方法
}